import numpy as np

def sigmoid(x):
    #Sigmoid activation function: f(x) = 1/(1+e^(-x))
    return 1/(1+np.exp(-x))

def deriv_sigmoid(x):
    #derivative of sigmoid: f'(x) = f(x)*(1-f(x))
    fx = sigmoid(x)
    return fx * (1-fx)

def mes_loss(y_true,y_pred):
    #y_true and y_pred are numpy arrays of the same length
    return ((y_true-y_pred)**2).mean()


class NeuralNetwork:
    '''
    A neral network with:
    -2 inputs
    -a hidden layer with 2 neurons(h1,h2)
    -a
    '''
